package Esquemas;

/**
 * Clase que representa la participacion de entidades en relaciones
 * @author Carmen M. Morillo Arias, Christian Neria Suárez, Diego Ojeda García
 */

public class Participa {
    String entidad;
    String relacion;
    String esquema;
    String rol;
    String cardinalidadMaxima;
    String cardinalidadMinima;

    /**
     * Constructor de la clase
     * @param entidad Nombre de la entidad
     * @param relacion Nombre de la relación
     * @param esquema Nombre del esquema
     * @param rol Papel que desempeña en esa relacion
     * @param cardinalidadMaxima Participación máxima en la relación
     * @param cardinalidadMinima Participación mínima en la relación
     */    
    public Participa(String entidad, String relacion, String esquema, String rol, String cardinalidadMaxima, String cardinalidadMinima) {
        this.entidad = entidad;
        this.relacion = relacion;
        this.esquema = esquema;
        this.rol = rol;
        this.cardinalidadMaxima = cardinalidadMaxima;
        this.cardinalidadMinima = cardinalidadMinima;
    }

    /**
     * Método que obtiene la cardinalidad máxima de una relación
     * @return Cardinalidad Máxima de la relación
    */
    public String getCardinalidadMaxima() {
        return cardinalidadMaxima;
    }
    
    /**
     * Método que establece la cardinalidad máxima de una relación
     * @param cardinalidadMaxima Cardinalidad Máxima de la relación
     */
    public void setCardinalidadMaxima(String cardinalidadMaxima) {
        this.cardinalidadMaxima = cardinalidadMaxima;
    }

    /**
     * Método que obtiene la cardinalidad mínima de una relación
     * @return Cardinalidad Mínima de la relación
    */
    public String getCardinalidadMinima() {
        return cardinalidadMinima;
    }

    /**
     * Método que establece la cardinalidad mínima de una relación
     * @param cardinalidadMinima Cardinalidad Mínima de la relación
     */
    public void setCardinalidadMinima(String cardinalidadMinima) {
        this.cardinalidadMinima = cardinalidadMinima;
    }

    /**
     * Método que obtiene el nombre de una entidad
     * @return Nombre de la entidad
     */
    public String getEntidad() {
        return entidad;
    }

    /**
     * Método que establece el nombre de una entidad
     * @param entidad Nombre de la entidad
     */
    public void setEntidad(String entidad) {
        this.entidad = entidad;
    }

    /**
     * Método que obtiene el nombre de una relacion
     * @return Nombre de la relacion
     */
    public String getRelacion() {
        return relacion;
    }

    /**
     * Método que establece el nombre de una relación
     * @param relacion  Nombre de la relación
     */
    public void setRelacion(String relacion) {
        this.relacion = relacion;
    }

    /**
     * Método que obtiene el rol de una entidad en una relación
     * @return Rol que tiene asignado
     */
    public String getRol() {
        return rol;
    }

    /**
     * Método que establece el rol de una entidad en una relación
     * @param rol Rol que se le va a asignar
     */
    public void setRol(String rol) {
        this.rol = rol;
    }
    
    /**
     * Método que establece el nombre de un esquema
     * @param e Nombre del esquema
     */
    public void setEsquema (String e){
        this.esquema = e;
    }
    
    /**
     * Método que obtiene el nombre de un esquema
     * @return Nombre del esquema
     */
    public String getEsquema(){
        return esquema;
    }
}
